package com.qy.entity;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.math.BigDecimal;

/**
 CREATE TABLE `package_info` ( 
   `package_id` varchar(20) NOT NULL COMMENT '套餐唯一标识符', 
   `name` varchar(100) NOT NULL COMMENT '套餐名称', 
   `price` decimal(6,2) NOT NULL COMMENT '套餐月费（元）', 
   `data_limit` int NOT NULL COMMENT '流量限制', 
   `data_unit` varchar(10) NOT NULL COMMENT '流量单位（GB）', 
   `call_minutes` int NOT NULL COMMENT '通话时长（分钟）', 
   `sms_count` int NOT NULL COMMENT '短信条数', 
   `network_speed` enum('基础','标准','高速') NOT NULL COMMENT '网络速度等级', 
   `features` text NOT NULL COMMENT '附加服务（数组→逗号分隔）', 
   `target_users` text NOT NULL COMMENT '目标用户群体（数组→逗号分隔）', 
   `description` varchar(255) NOT NULL COMMENT '套餐描述', 
   PRIMARY KEY (`package_id`), 
   KEY `idx_target_users` (`target_users`(100)), 
   KEY `idx_features` (`features`(100)) 
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='通信套餐信息表';
 */
@Data
@TableName("package_info")
public class PackageInfo {
    @TableId
    private String packageId; // 套餐唯一标识符
    
    private String name; // 套餐名称
    private BigDecimal price; // 套餐月费（元）
    private Integer dataLimit; // 流量限制
    private String dataUnit; // 流量单位（GB）
    private Integer callMinutes; // 通话时长（分钟）
    private Integer smsCount; // 短信条数
    private String networkSpeed; // 网络速度等级
    private String features; // 附加服务（数组→逗号分隔）
    private String targetUsers; // 目标用户群体（数组→逗号分隔）
    private String description; // 套餐描述
}